home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
090
/
debugfix.dat
< prev
next >
Wrap
Text File
|
1985-06-03
|
4KB
|
88 lines
OH, DEM-BUGS, DEM-BUGS IN DEBUG
---------------------------------
WE ALL KNOW THAT FLEAS HAVE FLEAS, DON'T WE. WELL NOW WE KNOW DEBUG
HAS BUGS. I AM REFERING TO THE DOS UTILITY 'DEBUG.COM' SUPPLIED ON THE
DOS 2.X SUPPLEMENTAL PROGRAM DISK FOR IBM PC-DOS.
THERE EXISTS A VERY SEVERE BUG IN DEBUG.COM. THE SYMPTOMS ARE NOT UNLIKE
COLD SYMPTOMS, EACH PERSONS ARE A LITTLE DIFFERENT. WELL THIS 'BUG'
EXHIBITS DIFFERENT SYMPTOMS THAT AT FIRST ARE HARD TO DIAGNOSE.
THESE SYMPTOMS CAN BE CAUSE BY ENTERING ANYONE OF THE DEBUG.COM COMMANDS,
SUCH AS 'D CS:100' AS 'D CS;100'. NOTICE THAT THE CHARACTER FOLLOWING
THE SEGMENT REGISTER IS NOT A COLON BUT A SEMI-COLON. THIS CHARACTER DOES
NOT HAVE TO BE A SEMI-COLON, IT COULD BE ANY CHARACTER INCLUDING A SPACE.
IF YOU ENTER THE 'DUMP' COMMAND WITH THE SEMI-COLON YOUR MACHINE WILL
EITHER SCREAM AT YOU AND/OR LOCK UP. IT WILL ALSO IN SOME CASES IMMEDIATELY
RETURN TO PC-DOS WITHOUT SO MUCH AS A GOOD-BYE. TRY IT WITH DIFFERENT DEBUG
COMMANDS AND DIFFERENT SEGMENT REGISTERS. YOU MAY OR MAY NOT BE AMUSED, I WASNT.
AFTER OVER ANY HOUR INTO TRACING A PROGRAM AND SINGLE STEPPING, I LIFTED MY
FINGER OFF THE SHIFT KET TO FAST AND THE ":" WAS ENTERED AS ";" AND MY PC WENT
OFF INTO PC-LIMBO. AGAIN THE MOANS AND GROANS AND CUSSING, AS WAS WITH THE
BUG THAT TURNED UP IN TREE.COM. BUT THATS ANOTHER BUG STORY.
I WILL SAVE YOU A GREAT DEAL OF HEART ACHE AND GIVE YOU THE FIX FOR THE
PROBLEM.
FIRST DEBUG DEBUG.COM
ENTER >DEBUG DEBUG.COM
ENTER -U 5D6
YOU SHOULD SEE THE FOLLOWING CODE
XXXX:5D6 D1E1 SHL CX,1
5D8 8BD9 MOV BX,CX
5DA FFB7F22A PUSH [BX+2AF2]
5DE 803C3A CMP BYTE PTR [SI],3A 'CHECK FOR ":"
5E1 75BD JNZ 05A0
5E3 EBD7 JMP 05BC
THIS IS THE OFFENDING CODE, THE CODE TO FIX THE PROBLEM IS AS FOLLOWS :
ENTER -E 5D6 80 3C 3A 75 C5 D1 E1 8B D9 FF B7 F2 2A
XXXX:5D6 803C3A CMP BYTE PTR [SI],3A 'CHECK FOR ":"
5D9 75C5 JNZ 05A0
5DB D1E1 SHL CX,1
5DD 8BD9 MOV BX,CX
5DF FFB7F22A PUSH [BX+2AF2]
5E3 EBD7 JMP 05BC
ENTER -W
ENTER -Q
YOU WILL BE RETURNED TO PC-DOS. AS ALWAYS YOU SHOULD BE WORKING FROM A
BACKUP COPY OF DEBUG.COM.TO TEST OUT THE NEW DEBUG.COM, JUST EXECUTE
DEBUG.COM AND TRY THE SAME TEST. HOPEFULLY YOU SHOULD SEE AN ERROR MESSAGE,
'^ ERROR' DISPLAYED AT THE POINT IN THE COMMAND.
FOR YOU UNENLIGHTENED, DEBUG.COM WAS PUSHING A WORD ONTO THE STACK EVEN
IF THE CHECK FOR THE ":" (HEX 3A) WAS NOT SUCCESSFUL AND BRACHING TO A ROUTINE
THAT DID NOT CLEAR THE STACK OF THIS VALUE. SO WHEN A RETURN (RET) WAS
EXECUTED ( WHICH POPS THE STACK FOR THE RETURN ADDRESS) THE WRONG RETURN
POINT WAS ENTERED AND WHAT WOULD HAPPEN IS ANYONES GUESS.
ALL THE FIX DOES IS CHECK FOR A ":" FIRST AND IF FOUND, THEN PUSHES THE STACK.
THIS SHOULD SAVE YOU MIDNIGHT HACKERS A COUPLE OF EXTRA HOURS SLEEP, FROM
HAVING TO RECOVER FROM A LOCKED UP MACHINE. ALSO IF YOU DON'T WANT TO USE
THE SHIFT KEY TO GET THE COLON, CHANGE HEX 3A, SAY TO HEX 3B, A SEMI-COLON.
A FURTHER NOTE. IT APPEARS THAT EVEN THOUGH PC-DOS 2.0 AND 2.1 DEBUG.COM
ARE IDENTICAL CODE, MICROSOFT MS-DOS DEBUG.COM, ON THE COLUMBIA, ALREADY HAS
THE FIX IN IT. MAYBE MICROSOFT WILL TELL IBM FOR THE NEXT RELEASE OF DOS,
UNLESS IBM DOS X.X DOES NOT COME FROM MICROSOFT.
JAMES MORGAN
1749 AMERICANA BLVD, APT 23-G
ORLANDO FLA. 32809
1749 AMERICANA BLVD, APT 23-G